package com.runnor.common.websys.system.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;

/**
 * @TableName article
 */
@TableName(value = "article")
@Data
public class Article implements Serializable {
    /**
     * 编号
     */
    @TableId(type = IdType.AUTO)
    private Long no;

    /**
     * 标题
     */
    private String title;

    /**
     * 内容
     */
    private String content;

    /**
     * 所属栏目
     */
    private String category;

    /**
     * 封面图
     */
    private String picture;

    /**
     * 是否置顶 1 置顶 0 不置顶
     */
    private Integer istop;

    /**
     * 关键词
     */
    private String keyword;

    /**
     * 来源
     */
    private String source;

    /**
     * 原文链接
     */
    private String link;

    /**
     * 审核状态 1 审核通过 0 审核驳回
     */
    private Integer auditState;

    /**
     * 审核描述
     */
    private String auditDescribe;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private String createTime;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField(updateStrategy = FieldStrategy.NEVER, select = true, exist = false)
    private String editTime;

    /**
     * 发布时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private String issueTime;

    /**
     * 当前状态  1发布  0暂存
     */
    private Integer articleState;

    /**
     * 发布人账号
     */
    private String account;

    /**
     * 逻辑删除，默认0
     */
    @TableLogic
    private Integer deleted;

    /**
     * 为暂存状态时，存储之前编辑的文章id
     */
    private String editNo;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}